/*************/
/* Container */
/*************/

html.remark-container, body.remark-container {
  height: 100%;
  width: 100%;
  -webkit-print-color-adjust: exact;
}
.remark-container {
  background: #d7d8d2;
  margin: 0;
  overflow: hidden;
}
.remark-container:focus {
  outline-style: solid;
  outline-width: 1px;
}
.remark-container:-webkit-full-screen {
  width: 100%;
  height: 100%;
}

body:-webkit-full-screen {
    background: #000000;
}

body:-moz-full-screen {
    background: #000000;
}

body:fullscreen{
    background: #000000;
}

/**********/
/* Slides */
/**********/

.remark-slides-area {
  position: relative;
  height: 100%;
  width: 100%;
}
.remark-slide-container {
  display: none;
  position: absolute;
  height: 100%;
  width: 100%;
  page-break-after: always;
}
.remark-slide-scaler {
  background-color: transparent;
  overflow: auto;
  position: absolute;
  -webkit-transform-origin: top left;
  -moz-transform-origin: top left;
  transform-origin: top-left;
  -moz-box-shadow: 0 0 30px #888;
  -webkit-box-shadow: 0 0 30px #888;
  box-shadow: 0 0 30px #888;
}
.remark-slide {
  height: 100%;
  width: 100%;
  display: table;
  table-layout: fixed;
  position: relative;

  > .left {
    text-align: left;
  }

  > .center {
    text-align: center;
  }

  > .right {
    text-align: right;
  }

  > .top {
    vertical-align: top;
  }

  > .middle {
    vertical-align: middle;
  }

  > .bottom {
    vertical-align: bottom;
  }
}

.remark-slide-content {
  background-color: #fff;
  background-position: center;
  background-repeat: no-repeat;
  display: table-cell;
  font-size: 20px;
  padding: 1em 4em 1em 4em;

  h1 { font-size: 55px; }
  h2 { font-size: 45px; }
  h3 { font-size: 35px; }

  .left {
    display: block;
    text-align: left;
  }

  .center {
    display: block;
    text-align: center;
  }

  .right {
    display: block;
    text-align: right;
  }
}

.remark-slide-number {
  bottom: 12px;
  opacity: 0.5;
  position: absolute;
  right: 20px;
}

.remark-slide-notes {
  border-top: 3px solid black;
  position: absolute;
  display: none;
}

.remark-code {
  font-size: 18px;
}
.remark-code-line {
  min-height: 1em;
}
.remark-code-line-highlighted {
  background-color: rgba(255, 255, 0, 0.5);
}
.remark-code-span-highlighted {
  background-color: rgba(255, 255, 0, 0.5);
  padding: 1px 2px 2px 2px;
}

.remark-visible {
  display: block;
  z-index: 2;
}
.remark-fading {
  display: block;
  z-index: 1;
  .remark-slide-scaler {
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
  }
}

/************/
/* Backdrop */
/************/

.remark-backdrop {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: none;
  background: #000;
  z-index: 2;
}

/*****************/
/* Pause overlay */
/*****************/

.remark-pause {
  bottom: 0;
  top: 0;
  right: 0;
  left: 0;
  display: none;
  position: absolute;
  z-index: 1000;

  .remark-pause-lozenge {
    margin-top: 30%;
    text-align: center;

    span {
      color: white;
      background: black;
      border: 2px solid black;
      border-radius: 20px;
      padding: 20px 30px;
      font-family: Helvetica, arial, freesans, clean, sans-serif;
      font-size: 42pt;
      font-weight: bold;
    }
  }
}

.remark-container.remark-presenter-mode.remark-pause-mode {
  .remark-pause {
    display: block;
  }
  .remark-backdrop {
    display: block;
    opacity: 0.5;
  }
}

/********/
/* Help */
/********/

.remark-help {
  bottom: 0;
  top: 0;
  right: 0;
  left: 0;
  display: none;
  position: absolute;
  z-index: 1000;
  -webkit-transform-origin: top left;
  -moz-transform-origin: top left;
  transform-origin: top-left;

  .remark-help-content {
    color: white;
    font-family: Helvetica, arial, freesans, clean, sans-serif;
    font-size: 12pt;
    position: absolute;
    top: 5%;
    bottom: 10%;
    height: 10%;
    left: 5%;
    width: 90%;

    h1 {
      font-size: 36px;
    }

    td {
      color: white;
      font-size: 12pt;
      padding: 10px;
    }
    td:first-child {
      padding-left: 0;
    }
    .key {
      background: white;
      color: black;
      min-width: 1em;
      display: inline-block;
      padding: 3px 6px;
      text-align: center;
      border-radius: 4px;
      font-size: 14px,
    }
  }

  .dismiss {
    top: 85%;
  }
}

.remark-container.remark-help-mode {
  .remark-help {
    display: block;
  }
  .remark-backdrop {
    display: block;
    opacity: 0.95;
  }
}

/******************/
/* Presenter mode */
/******************/

.remark-preview-area {
  bottom: 2%;
  left: 2%;
  display: none;
  opacity: 0.5;
  position: absolute;
  height: 47.25%;
  width: 48%;

  .remark-slide-container {
    display: block;
  }
}

.remark-notes-area {
  background: #fff;
  bottom: 0;
  color: black;
  display: none;
  left: 52%;
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 0;

  .remark-top-area {
    height: 50px;
    left: 20px;
    position: absolute;
    right: 10px;
    top: 10px;
  }

  .remark-bottom-area {
    position: absolute;
    top: 75px;
    bottom: 10px;
    left: 20px;
    right: 10px;

    .remark-toggle {
      display: block;
      text-decoration: none;
      font-family: Helvetica,arial,freesans,clean,sans-serif;
      height: 21px;
      font-size: 0.75em;
      text-transform: uppercase;
      color: #ccc;
    }

    .remark-notes-current-area {
      height: 70%;
      position: relative;

      .remark-notes {
        clear:both;
        border-top: 1px solid #f5f5f5;
        position: absolute;
        top: 22px;
        bottom: 0px;
        left: 0px;
        right: 0px;
        overflow-y: auto;
        margin-bottom: 20px;
        padding-top: 10px;
      }
    }

    .remark-notes-preview-area {
      height: 30%;
      position: relative;

      .remark-notes-preview {
        border-top: 1px solid #f5f5f5;
        position: absolute;
        top: 22px;
        bottom: 0px;
        left: 0px;
        right: 0px;
        overflow-y: auto;
      }
    }

    .remark-notes > *:first-child,
    .remark-notes-preview > *:first-child {
      margin-top: 5px;
    }
    .remark-notes > *:last-child,
    .remark-notes-preview > *:last-child {
      margin-bottom: 0;
    }
  }
}

.remark-toolbar {
  color: #979892;
  vertical-align: middle;

  .remark-toolbar-link {
    border: 2px solid #d7d8d2;
    color: #979892;
    display: inline-block;
    padding: 2px 2px;
    text-decoration: none;
    text-align: center;
    min-width: 20px;

    &:hover {
      border-color: #979892;
      color: #676862;
    }
  }

  .remark-toolbar-timer {
    border: 2px solid black;
    border-radius: 10px;
    background: black;
    color: white;
    display: inline-block;
    float: right;
    padding: 5px 10px;
    font-family: sans-serif;
    font-weight: bold;
    font-size: 175%;
    text-decoration: none;
    text-align: center;
  }
}

.remark-container.remark-presenter-mode {
  .remark-slides-area {
    top: 2%;
    left: 2%;
    height: 47.25%;
    width: 48%;
  }
  .remark-preview-area {
    display: block;
  }
  .remark-notes-area {
    display: block;
  }
}

/************/
/* Blackout */
/************/

.remark-container.remark-blackout-mode:not(.remark-presenter-mode) {
  .remark-backdrop {
    display: block;
    opacity: 0.99;
  }
}

/************/
/* Mirrored */
/************/

.remark-container.remark-mirrored-mode:not(.remark-presenter-mode) {
  .remark-slides-area {
    -webkit-transform: scaleX(-1);
    -moz-transform: scaleX(-1);
    -ms-transform: scaleX(-1);
    -o-transform: scaleX(-1);
  }
}

/************/
/* Printing */
/************/

@media print {
  .remark-container {
    overflow: visible;
    background-color: #fff;
  }
  .remark-container.remark-presenter-mode {
    .remark-slides-area {
      top: 0px;
      left: 0px;
      height: 100%;
      /*
        NOTE: 100% doesn't match @page size width or height
              681px matching @page size/width does, however
      */
      width: 681px;
    }
    .remark-preview-area,
    .remark-notes-area {
      display: none;
    }
    .remark-slide-notes {
      display: block;
      margin-left: 30px;
      width: 621px;
    }
  }
  .remark-slide-container {
    display: block;
    position: relative;
  }
  .remark-slide-scaler {
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    -webkit-transform-origin: initial;
    box-shadow: none;
  }
}
@page {
  margin: 0;
}
